<?php

/**
 * @author Archer
 * @note 公共基本配置
 * @mail 188802862@qq.com
 */

return [

    //注册额外的命名空间
    'namespace'=>[

    ],

    //默认配置
    'default'=>[
        //默认错误码 - 当错误码找不到的时候用到
        'errCode'=>999,
        //所有控制器默认的方法
        'action'=>'index'
    ],

    //事件管理器
    'events'=>[
        //中间件
        'middleware'=>[
            //处理方法调用之前执行， 此时应用程序还不知道是否存在匹配的路由 可中断
            'beforeHandleRoute'=>[],
            //存在匹配的路由及相关的处理器， 不过处理器还未被执行 可中断
            'beforeExecuteRoute'=>[],
            //处理器执行之后触发 不可中断
            'afterExecuteRoute'=>[],
            //NotFound触发之前执行 可中断
            'beforeNotFound'=>[],
            //处理器执行之后执行 可中断
            'afterHandleRoute'=>[]
        ],
        
        'database'=>[
            //当成功连接数据库之后触发 不可中断
            'afterConnect'=>[],
            //在发送SQL到数据库前触发 可中断
            'beforeQuery'=>[],
            //在发送SQL到数据库执行后触发 不可中断
            'afterQuery'=>[],
            //在关闭一个暂存的数据库连接前触发 不可中断
            'beforeDisconnect'=>[],
            //事务启动前触发 不可中断
            'beginTransaction'=>[],
            //事务回滚前触发 不可中断
            'rollbackTransaction'=>[],
            //事务提交前触发 不可中断
            'commitTransaction'=>[],
        ]
    ],
];